package com.example.smartclassroom.util;

import com.example.smartclassroom.enums.BorrowStatusEnum;
import lombok.Data;

import java.util.List;

@Data
public class JsonDate
{
    private  int  code;
    private  String  msg;
    private  Object  data;
    public List<? extends Object> list;
    public int age1;

    /**
     * 成功返回
     */
    public static JsonDate success(Object data)
    {
        JsonDate jsonDate = new JsonDate();
        jsonDate.setCode(0);
        jsonDate.setMsg("success");
        jsonDate.setData(data);
        return jsonDate;
    }
    public static JsonDate success(Object data, String msg)
    {
        JsonDate jsonDate = new JsonDate();
        jsonDate.setCode(0);
        jsonDate.setMsg(msg);
        jsonDate.setData(data);
        return jsonDate;
    }
    public static JsonDate success(String msg,int code)
    {
        JsonDate jsonDate = new JsonDate();
        jsonDate.setCode(0);
        jsonDate.setMsg(msg);
        return jsonDate;
    }
    public  static JsonDate success(BorrowStatusEnum borrowStatusEnum)
    {
        JsonDate jsonDate = new JsonDate();
        jsonDate.setCode(borrowStatusEnum.getCode());
        jsonDate.setMsg(borrowStatusEnum.getMsg());
        return jsonDate;
    }

    public  static JsonDate successEnum(BorrowStatusEnum borrowStatusEnum,Object object)
    {
        JsonDate jsonDate = new JsonDate();
        jsonDate.setCode(borrowStatusEnum.getCode());
        jsonDate.setData(object);
        jsonDate.setMsg(borrowStatusEnum.getMsg());
        return jsonDate;
    }

    /**
     * 失败返回
     */
    public static JsonDate fail(String msg,int  code)
    {
        JsonDate jsonDate = new JsonDate();
        jsonDate.setCode(code);
        jsonDate.setMsg(msg);
        return jsonDate;
    }

    /**
     * 错误返回
     */
    public static JsonDate errorEnum(BorrowStatusEnum borrowStatusEnum)
    {
        JsonDate jsonDate = new JsonDate();
        jsonDate.setCode(borrowStatusEnum.getCode());
        jsonDate.setMsg(borrowStatusEnum.getMsg());
        return jsonDate;
    }


}
